// BWBackStitch -- a back stitch

#import <Cocoa/Cocoa.h>
#import "BWGridGeometry.h"

typedef enum {
    kPart_None,
    kPart_Start,
    kPart_End,
    kPart_Middle
} BWBackStitch_Part;

@class BWThread;

@interface BWBackStitch : NSObject <NSCoding>
{
    int startRow;
    int startColumn;
    BWGrid_Quadrant startQuadrant;

    int endRow;
    int endColumn;
    BWGrid_Quadrant endQuadrant;

    BWThread *thread;
}

- (id) initWithStartRow: (int) sr
            startColumn: (int) sc
               quadrant: (BWGrid_Quadrant) sq
                 endRow: (int) er
              endColumn: (int) ec
               quadrant: (BWGrid_Quadrant) eq
                 thread: (BWThread *) t;


- (int) startRow;
- (int) startColumn;
- (BWGrid_Quadrant) startQuadrant;

- (void) setStartRow: (int) row
              column: (int) column
            quadrant: (BWGrid_Quadrant) quadrant;

- (int) endRow;
- (int) endColumn;
- (BWGrid_Quadrant) endQuadrant;

- (void) setEndRow: (int) row
            column: (int) column
          quadrant: (BWGrid_Quadrant) quadrant;

- (BWThread *) thread;
- (void) setThread: (BWThread *) thread;

@end // BWBackStitch


